/*
Object.assign() 是JavaScript中的一个内置方法，它用于将一个或多个源对象的属性复制到目标对象中。它的语法如下：
Object.assign(target, ...sources)
-  target 是必需的，它是目标对象，即源对象的属性将被复制到其中。
-  sources 是一个或多个被复制属性的源对象。
当我们调用 Object.assign() 方法时，它会将源对象（一个或多个）的所有可枚举属性复制到目标对象中，并返回目标对象。
如果目标对象中已经存在某个属性，则该属性的值将被源对象的值覆盖。
 */
Object.myAssign = function (target,...sources) {
    let ret = Object(target)
    sources.forEach((obj)=>{
        // 对象存在
        if (obj) {
            // 拿到对象的key
            for (let key in obj) {
                // 如果obj有key
                if (obj.hasOwnProperty(key)) {
                    ret[key] = obj[key]
                }
            }
        }
    })
    return ret
}
const obj1 = {a: 1}
const obj2 = {b: 2}
const res = Object.myAssign(obj1, obj2)
console.log(obj1);
console.log('sadas')
